package Var1020;

//----必须每次都要把之前的作业重新整理，要改的改，要加的加,务必
//----注意规范，类名首字母大写，属性首字母小写，方法首字母小写
//
//1：公司有公司名称，注册地址，电话，经营范围等属性，
//公司有很多员工（用对象数组表示，作为公司的属性），
//员工基本信息如下：有工号，姓名，性别，职务，薪水，身份证号，工作年限。
//公司有招聘员工方法，有输出员工信息方法，以及辞退员工等方法。
//用oo的思想模拟
//  要求方法如下：
//   1)加入新员工.(注意参数的处理)
//   2)输出公司信息和员工信息
//   3)辞退员工
//   4)给员工涨薪,规则是根据工作年限，每一年涨50元。
//   5)查找薪水最高的员工，返回员工信息
public class Firm {
    String corporatename;//公司名称
    String address;//注册地址
    String phone;//电话
    String range;//经营范围
    Employee[] em = new Employee[30];
    int pos = 0;//当前员工人数

    //显示公司信息
    public void companyInfo() {
        System.out.println("公司名称:" + this.corporatename);
        System.out.println("注册地址:" + this.address);
        System.out.println("电话:" + this.phone);
        System.out.println("经营范围:" + this.range);
    }

    //添加员工信息
    public void Addemployeeinformation(Employee ee) {
        for (int i = 0; i < em.length; i++) {
            if (em[i] == null) {
                em[i] = ee;
                pos++;
                System.out.println("添加成功");
                break;
            }else {
                System.out.println("添加失败");
            }
        }
    }

    //显示员工信息
    public void showEmployeeInfo() {
        System.out.println("工号\t姓名\t性别\t职务\t薪水\t身份证号\t工作年限");
        for (int i = 0; i < pos; i++) {
            System.out.print(i + 1 + "\t");
            em[i].showEmployeeInfo();
        }
    }

    //辞退员工
    public void Dismissalofemployees(int number) {
        for(int i=1;i<pos;i++){
            if(em[i]==em[pos-1]){
                for(int j=i+1;i<em.length;i++){
                    em[j-1]=em[j];
                }
                em[pos-1]=null;
                pos--;
                System.out.println("辞退成功");
            }else {
                System.out.println("辞退失败");
            }
        }
    }

    //员工涨薪
    public void Employeesalaryincrease(int number){

    }

    //查找薪水最高的员工，返回员工信息
    public void Findthehighestpaidemployees(){

    }
}
